ProgID and OLE 1 Compatibility

Programmatic identifiers are not guaranteed to be unique so they can be used only where name collisions are manageable, such as in achieving compatibility with OLE 1. Also, the ProgID is the  class name  used for an OLE 2 class when it is placed in a server application (OLE 1 server).

 

Note  Because OLE 2 provides a built-in OLE 1/OLE 2 compatibility layer, rarely will an OLE 2 class that is insertable in an OLE 2 container not be insertable in an OLE 1 container.